Many modern businesses rely on high availability of their computer systems and networks and rely on in-built storage redundancy and communication path redundancy to maintain operability when failures occur. It is common for service engineers to have to perform service operations on currently active systems, without disrupting active application programs. When there is a requirement for concurrent code updates to a pair of components of an active heterogeneous computer network, which pair of components would normally provide redundancy and enable failover, there is an increased risk of disruptions to system operations. In particular, in a computer system including one or more host computer systems and a redundant storage system that uses a failover mechanism to maintain operations, there is a risk that service operations carried out on separate parts of an active storage system could lead to system outages if reliance is placed on conventional failover operations being performed automatically and sequentially. That is, if unavailability of a first system resource leads to a first failover operation, a subsequent failover may not succeed in response to unavailability of a second resource, if a host computer retains information about the first resource's previous unavailability.